1
Dalle Chiamate API Dirette all'astrazione di LangChain
AI010Lesson 5
00:00

Oltre la Richiesta Grezza

Quando si inizia con i Modelli Linguistici di Grande Dimensione (LLM), gli sviluppatori utilizzano tipicamente chiamate API dirette (come la libreria Python di OpenAI) per inviare un prompt e ricevere una risposta. Sebbene funzionale, questo approccio diventa ingestibile man mano che le applicazioni crescono.

Il Problema dell'Assenza di Stato

I Modelli Linguistici di Grande Dimensione sono intrinsecamente senza stato. Ogni volta che invii un messaggio, il modello "dimentica" chi sei e ciò che hai detto precedentemente. Ogni interazione è una pagina bianca. Per mantenere una conversazione, devi passare manualmente l'intero cronologico al modello ogni singola volta.

La Soluzione di LangChain

LangChain introduce il wrapper per il modello ChatOpenAI modello. Questo non è solo un wrapper per caso—costituisce la base per la modularità. Astrattendo la chiamata al modello, possiamo successivamente scambiare modelli, inserire memoria e utilizzare template senza riscrivere l'intero codice.

Lo Scenario del Pirata
Immagina un'email clienti scritta in gergo "piratesco". Per tradurla in una risposta formale aziendale, una chiamata API diretta richiede di codificare hardcoded le istruzioni. Con LangChain, separiamo lo "Stile" (Pirata vs. Formale) dal "Contenuto" (L'email) sfruttando l'astrazione.
main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>
Question 1
Why do we say LLMs are "stateless"?
They do not have access to the internet.
They cannot generate the same response twice.
They do not inherently remember previous messages in a conversation.
They are only capable of processing text, not data states.
Challenge: Initialize ChatOpenAI
Solve the problem below.
You are building a creative writing assistant and need to initialize your first LangChain model.

Your task is to create a ChatOpenAI instance named my_llm with a temperature of 0.7 to allow for more creative (non-deterministic) responses.
Task
Write the Python code to import and initialize the model.
Solution:
from langchain_openai import ChatOpenAI
my_llm = ChatOpenAI(temperature=0.7)